package com.jwetherell.my.sort;

import java.util.ArrayList;
import java.util.List;

public class TestSort {

	public static void main(String[] args) {
		
		int [] data = getUnSortedData();
		printData(data);

		// MergeSort
//		System.out.println("MergeSort");
//		new MergeSort().sortTopDownApproach(data);
//		printData(data);
		
		// Quick
		System.out.println("QuickSort");
		QuickSort.sort(data);
		printData(data);
		
//		System.out.println("Index of key: " + );
//		System.out.println("Index of key: " + SearchAlgos.interpolationSearch(data, key));
		
	}

	private static void printData(int[] data) {
		System.out.print("Data: ");
		for (int i = 0; i < data.length; i++)
			System.out.print(data[i] + "[" + i + "], ");
		System.out.print("\n");
	}

	private static int[] getUnSortedData() {
		List<Integer> data = new ArrayList<Integer>();
		data.add(11);
		data.add(7);
		data.add(15);
		data.add(21);
		data.add(18);
		data.add(22);
		data.add(5);

		int [] arrayData = new int[data.size()];
		for (int i = 0; i < data.size(); i++) {
			arrayData[i] = data.get(i);
		}
		
		return arrayData;
	}
	
}
